/*
Slide.hpp
--------------

Par Bréhaut Vincent le 12/05/2011

Rôle: Créer, afficher et gérer les slides
*/

#ifndef DEF_SLIDE
#define DEF_SLIDE

#include <iostream>
#include <SFML/Graphics.hpp>
#include <vector>
#include "Widget.hpp"
#include "../Engine.hpp"

namespace GUI
{
    class Slide : public Widget
    {
        public:
            Slide(Engine &Moteur, int value = 0, int max_value = 0);

            void SetValue(int value);
            int GetValue();

            bool IsMax();
            bool IsMin();

            virtual void Afficher();
            virtual void UpdateEvent();
        protected:
            int m_value;
            int m_max_value;

            bool m_deplacement; // Si on clique sur le curseur, m_deplacement = true pour signaler le déplacement du curseur

            sf::Sprite m_sprite;
            std::vector<sf::IntRect> m_rects;
    };
}

#endif
